Media productions employ increasingly complex computer enabled animations to produce realistic images. Examples of strands that improve an animation's realism include depictions of long hair, wavy or curly hair, braids, animal ears, tails, foliage, and jewelry.
Strands are typically represented in animation by curves. Because computer graphics generated curves are computer resource intensive to animate, it is desirable to approximate curves during parts of the animation process to reduce computer processing time and memory requirements.
FIG. 1A shows graphically one known method of using line segments to approximate a computer generated curve 102 that relies on the curve's control vertices 106. Line segments 104 are drawn between each pair of successive control vertices 106 (except between the curve's endpoints) to create a chain of line segments that approximates the curve. This method involves simple identification of control vertices, but results in approximations having line segments that are consistently longer than the respective portions of the original curve they approximate. Thus, the approximations are undesirably consistently larger (longer) than the originals.
FIG. 1B shows another method of approximation that uses a curve's segment endpoints 108. Line segments 104 are drawn between each pair of successive segment endpoints 108 (except between the curve's endpoints) to create an approximation. Approximations created in this way have line segments that are consistently shorter than their respective portions of the original curve 102. Thus, the approximations are undesirably consistently smaller (shorter) than the originals.